1. Field of the Invention
The present invention relates to a USB keyboard, in particularly to the USB keyboard arrangement having N-keys rollover and the method thereof.
2. Description of the Related Art
Generally, the steps of detecting ghost key condition of a matrix keyboard in a square circuit are applicably shown in FIGS. 1 and 2 as following steps of:    1. Constrainedly pressing a key SW-A while a scanning line L1 outputs a high voltage H1 as well as a scanning line L2 outputs a low voltage LOW and sensing if a first node Node 1 is directed to the low voltage LOW;    2. Keeping on continuously and constrainedly pressing a key SW-B and observing a second node Node 2 located in the low voltage LOW for the Node 2-1 to be directed to the low voltage LOW;    3. Sensing a third node Node 3 to be directed to the low voltage LOW when a key SW-C is continuously and constrainedly pressed;    4. Sensing a fourth node Node 4 to be directed to the low voltage LOW without pressing a key SW-D, whereby displaying the signal of the key SW-D on a monitor.
By the above detecting steps, the keys SW-A, -B, -C, and -D on four corner of the square circuit are in a clockwise distribution started from the left-top orientation. Wherein, when the keys SW-A, -B, and -C are pressed simultaneously, the key SW-D is also actuated so that signals of four keys are displayed. However, the key SW-D is actually not pressed, and this is the so-called “key ghosting”. That is, once the keys SW-A to -D are placed within a four-crosspoint-array, a ghost key condition is inevitably incurred while only three keys are pushed to actuate.
Accordingly, there are two conventional methods to obviate the ghost key condition;
1. Firmware Program:
Referring to FIG. 3, when at least three keys are concurrently pressed, the firmware program distinguishes a ghost key condition and determines not to admit the input of the keys. The program differentiates the input of the keys only when the ghost key condition is obviated. That is to say, the input during the ghost key condition is read as null, which readily incurs a void command while the user enters a coming command.
2. Increasing Diode:
Referring to FIG. 4, showing four keys SW-A, B, C, and D are respectively connected to scanning lines L1 and L2 as well as spy lines S1 and S2 within the matrix circuit of the keyboard. Wherein, the inputting ends of the keys are correspondingly contacted with diodes D1, D2, D3, and D4, and the detecting steps are as follows:                1. When the scanning line L1 sends a signal of high voltage H1, the scanning line L2 sends a signal of low voltage LOW, and the key SW-A is constrainedly pressed, the first node Node 1 is distinguished as a signal of low voltage LOW;        2. When the key SW-B is continuously pressed and the second node Node 2 is distinguished as a signal of low voltage LOW, but Node 2-1 is distinguished as a signal of high voltage as a result of the non-communication of the diode D2 caused by the voltage differentiation between input and output ends of the diode D2 being below 0.6 V;        3. When the key SW-C is continuously pressed, the third node Node 3 is differentiated as a signal of high voltage.        4. Herein, the fourth node Node 4 is differentiated as a signal of high voltage without pressing the key SW-D. Therefore, no ghost key condition is observed.        
Accordingly, the second method can preferably obviate the key ghosting. However, every key has to be supplied with a diode, which attends a burden of producing cost.
In addition, as shown in FIGS. 1A and 1B, there is a limitation on a Qwerty because of a standard regulation defined on a USB keyboard (as indicated in FIG. 1A). That is to say, the keyboard has to send eight bytes of keycodes to the system according to following rationales:
The first byte (0 byte): the bit map is modified by modifier key, and each bit presents a key; accordingly, there are eight keys (two symmetrical Shifts, Ctrls, Alts, and Wins as shown in FIG. 1B).
The second byte (1 byte): not defined.
The third byte to the eighth byte (2-7 byte), totally six bytes: normal keys are modified, and each byte presents a key; whereby, there are six keys. However, because of the above limitation of standards, the USB keyboard is still limited to send six normal keys at a time even if the general USB keyboard can obviate ghost key condition.
Therefore, the possibility of combining the aforementioned conventional arts with the standard USB keyboard may be accepted, in which as a matter of fact the method of increasing diodes between the key circuit preventing key ghosting can only solve the limitation of standards by expanding the restricted key areas of the USB keyboard to the entire keys thereof. That is to say, in view of the standard firmware of keycode, the concurrent differentiation can only limitedly occurs on simultaneously pressing eight modifier keys and six normal keys although such combination may obviate the problem of ghost key condition.